package com.example.demo.customer;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;

@Entity
@Table

public class Customer {

    @Id
        private  Long id;
        @NotBlank
        private  String name;

        @NotBlank
        @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
        private  String password;

        @NotBlank
        @Email
        private  String email;

        public Customer()
        {

        }


        public Customer(Long id, String name, String password, String eamil)
        {
            this.id = id;
            this.name = name;
            this.password =password;
            this.email = eamil;
        }

        @JsonProperty("customerId")
        public Long getId()
        {
            return id;
        }

    //    CustomerId
//        public Long getCustomerId()
//        {
//            return id;
//        }


        public String getName()
        {
            return name;
        }


        @JsonIgnore
        public String getPassword()
        {
        return password;
        }

    @Override
    public String toString() {
        return "Customer{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", password='" + password + '\'' +
                ", eamil='" + email + '\'' +
                '}';
    }

    public String getEamil() {
        return email;
    }

}
